package com.sxt.common;

import org.apache.shiro.crypto.hash.Md5Hash;
import org.apache.shiro.crypto.hash.Sha1Hash;

public class MD5Utils {

    public static void main(String[] args) {
        System.out.println(md5("123456","张三",2));
        System.out.println(md5("123456","李四",2));
        //sha1("123456","武汉",2);
    }

    public static String md5(String source,String salt,Integer hashiteraations) {
//        Md5Hash hash1=new Md5Hash("123456");
//        System.out.println("使用MD5加密一次:"+hash1);
//        Md5Hash hash2=new Md5Hash(hash1.toString());
//        System.out.println("使用MD5加密二次:"+hash2);
//        //参数说明 source 明文   salt 盐  就是一个加密的混淆字符串
//        Md5Hash hash3=new Md5Hash("123456","北京北京北京");
//        System.out.println("使用MD5加密一次并加盐:"+hash3.toString());
        Md5Hash hash4=new Md5Hash(source,salt,hashiteraations);
//        System.out.println("使用MD5加密3次并加盐:"+hash4.toString());
        return hash4.toString();
    }

    public static void sha1(String source,String salt,Integer hashiteraations) {
        Sha1Hash hash1=new Sha1Hash("123456");
        System.out.println("使用SHA1加密一次:"+hash1);
        Sha1Hash hash2=new Sha1Hash(hash1.toString());
        System.out.println("使用SHA1加密二次:"+hash2);
        //参数说明 source 明文   salt 盐  就是一个加密的混淆字符串
        Sha1Hash hash3=new Sha1Hash("123456","北京北京北京");
        System.out.println("使用SHA1加密一次并加盐:"+hash3.toString());
        Sha1Hash hash4=new Sha1Hash("123456","武汉",3);
        System.out.println("使用SHA1加密3次并加盐:"+hash4.toString());
    }
}
